home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 12 / Cream of the Crop 12 (Part II) / Cream of the Crop 12 (Part II).iso / BBS / HARRY12.ZIP / HARRY.BTM < prev   
Encoding:
Text File  |  1996-02-25  |  3.3 KB  |  126 lines

  1. ::        HARRY.BTM v1.2 - Dedicated to Harry Lee, wherever he be.
  2. ::        Poll/freq/send batch routine for BinkleyTerm mail systems. 
  3. ::        4dos 5.+ req'd. Freeware by Bill Whitehouse.
  4. @echo off 
  5. setlocal
  6. ::  your default zone
  7.   set z=1
  8. ::...  & its outbound
  9.   set ob=f:\out
  10. ::  no last backslash
  11. ::-=-=- end.cfg -=-=-
  12.  
  13. iff islabel %1 then
  14.    gosub %1
  15. else
  16.    text
  17.           Harry POLL [z:]nnn/nnn [c|d|f|h]
  18.           Harry FREQ [z:]nnn/nnn filename [c|d|f|h]
  19.           Harry SEND [z:]nnn/nnn [#d:\path\]filename [c|d|f|h]
  20.    endtext
  21. quit 4
  22. endiff
  23. ::: attach flavor: crash, direct, normal, hold 
  24. for %a in (c d f h) if %@word[-0,%3 %4]=%a set cf=%a
  25.  
  26. ::: addressing
  27. ::: optional userlist lookup syntax: /u"firstname lastname"
  28. ::     set ul=c:\bink\fidouser.lst
  29. ::: note: Chris Dunford's fgrep v1.83 is significantly faster than ffind
  30. ::     iff %@instr[0,2,%2]=/u then
  31. ::         ffind /km/t%@word[",0,/u"%2"] %ul|input %%h
  32. ::         fgrep -i0,25 -j -x -s -1 %@word[",0,%2] %ul|input %%h
  33. ::         set h=%@word[-0,%h]
  34. ::     endiff
  35.  
  36. if "%h"="" set h=%2
  37. iff %@numeric[%@word[":/",0,%h]%@word[":/",1,%h]%@word[":/",2,%h]]=0 then
  38.   echo your addressing is wrong.
  39.   quit 2
  40. endiff
  41.  
  42. iff %@words[":/",%h] le 2 then
  43.   set har=%h
  44. elseiff %z=%@word[":",0,%h] then
  45.   set har=%@word[":/",1,%h]/%@word[":/",2,%h]
  46. else
  47.   set add=%@word[":",0,%h]
  48.   set zo=change
  49.   gosub zone
  50.   set zo=%@instr[%@len[%hex],3,000%hex]
  51.   set hex=
  52.   set har=%@word[":/",1,%h]/%@word[":/",2,%h]
  53.   iff not isdir %ob.%zo then
  54.     cls
  55.     inkey /c/x/w20/k"yn" Create (%ob.%zo) Zone %@word[":",0,%h]? [y/n] %%nz
  56.     if %nz=n .or. "%nz"="" quit 1
  57.     md %ob.%zo
  58.   endiff
  59.   set ob=%ob.%zo
  60. endiff
  61.  
  62. do 2                                      
  63.   set add=%@word[":/",%@if["%net"="",0,1],%har]
  64. :zone
  65.   do until %add = 0
  66.     set hex=%@instr[%@word[0,%@eval[%add %% 16]],1,0123456789abcdef]%hex
  67.     set add=%@int[%@eval[%add/16]]
  68.   enddo
  69. if %zo=change return
  70.     if "%net"="" (set net=%@instr[%@len[%hex],4,0000%hex]%+set hex=)
  71. enddo
  72. set add=%net%%@instr[%@len[%hex],4,0000%hex]
  73.  
  74. ::: change flavor ?
  75. if "%cf"="" set cf=f
  76. set out=%ob\%add
  77. for %a in (c d f h) if %out.%alo ne %out.%cf%lo .and. exist %out.%alo gosub cf
  78.  
  79. :::-----------
  80. if "%req" ne "" echo %req>>%out.req
  81. iff "%1"="send" .or. not exist %out.%cf%lo then
  82.    %cmd>%@if[%@filesize[%out.%cf%lo] gt 2,>,]%out.%cf%lo
  83. endiff
  84. quit 0
  85. :::-----------
  86.  
  87. :poll
  88. set cmd=echo.
  89. return
  90.  
  91. :freq
  92. set req=%3
  93. set cmd=echo.
  94. return
  95.  
  96. :send
  97. iff exist %@word["#",0,%3] then
  98.   set cmd=echo %3
  99. else
  100.   echo %@word["#",0,%3] does not exist. aborting.
  101.   quit 3
  102. endiff
  103. return
  104.  
  105. :cf
  106. set pnd=%@word[%@index[cdfh,%a],crash,direct,normal,hold]
  107. echo.
  108. inkey /w20/k"yn" Prepend existing [-%pnd-] mail to this attach? [y/n] %%pp
  109.     if "%pp"="" .or. "%pp"="n" return
  110.     iff not exist %out.%cf%lo .or. %@filesize[%out.%cf%lo] le 2 then
  111.       move %out.%alo %out.%cf%lo/q/v
  112.     else
  113.       copy %out.%cf%lo+%out.%alo %out.%cf%lo/q/v/b
  114.       del %out.%alo/q
  115.     endiff
  116. return
  117.  
  118. :: adapted from: HEX2DEC by Barry Block (2:280/901@fidonet)
  119. ::               24 Jan 96  22:49:52
  120. ::               conference: 4dos
  121. ::               DEC2HEX by Boian Bonev (2:350/32@fidonet)
  122. ::               02 Feb 96  02:06:42
  123. ::               conference: 4dos
  124. --- msgedsq 2.1
  125.  * Origin: There's no one as smart as all of us. (1:323/109)
  126.